//
//  YTUserLoginAPI.h
//  YiTuDriverClient
//
//  Created by 石少庸 on 2017/5/5.
//  Copyright © 2017年 Yitu. All rights reserved.
//

#import "YTAPIClient.h"

@interface YTUserLoginAPI : YTAPIClient

/**
 用户登录

 @param phoneNum 手机号
 @param password 密码
 @param areaCode 手机号前缀
 @return 返回登录结果信号
 */
+ (RACSignal *)userLogin:(NSString *)phoneNum
                password:(NSString *)password
                areaCode:(NSString *)areaCode;

/**
 发送验证码

 @param phoneNum 手机号
 @param areaCode 国家区号
 @return 返回发送结果信号
 */
+ (RACSignal *)sendVerifyCode:(NSString *)phoneNum
                     areaCode:(NSString *)areaCode;

/**
 验证验证码

 @param code 验证码
 @param phoneNum 手机号
 @param areaCode 国家区号
 @return 返回验证结果信号
 */
+ (RACSignal *)validateVerifyCode:(NSString *)code
                         phoneNum:(NSString *)phoneNum
                         areaCode:(NSString *)areaCode;

/**
 用户注册

 @param phoneNum 手机号码
 @param areaCode 国家区号
 @param password 密码
 @param verifyCode 验证码
 @param isInLand 是否是国内
 @param inviteCode 邀请码,可不填
 @return 返回注册结果信号
 */
+ (RACSignal *)registerWithPhoneNum:(NSString *)phoneNum
                           areaCode:(NSString *)areaCode
                           password:(NSString *)password
                         verifyCode:(NSString *)verifyCode
                         inviteCode:(NSString *)inviteCode
                             inLand:(NSString *)isInLand;

/**
 找回密码

 @param phoneNum 手机号码
 @param areaCode 手机号码前缀
 @param verfiyCode 验证码
 @param password 密码
 @return 返回执行信号
 */
+ (RACSignal *)userFindPassWordWithPhone:(NSString *)phoneNum
                                areaCode:(NSString *)areaCode
                              verfiyCode:(NSString *)verfiyCode
                                password:(NSString *)password;

/**
 这里不需要传参数

 @return 返回执行结果信号
 */
+ (RACSignal *)userLogout;

@end
